start: 00000000 4EFA 0032 jmp [PC + 0x32 /* 00000034 */] 00000004 0532 2E30 btst [A2 + D2 * 8 + 0x30], D2 00000008 2E33 2943 6F70 7972 move.l D7, [[A3 + <>] + 0x6F707972] 00000010 6967 bvs +0x69 /* 00000079 */ 00000012 6874 bvc +0x76 /* 00000088 */ 00000014 20A9 2031 move.l [A0], [A1 + 0x2031] 00000018 3939 3020 4661 move.w -[A4], [0x30204661] 0000001E 7261 moveq.l D1, 0x61 00000020 6C6C bge +0x6E /* 0000008E */ 00000022 6F6E ble +0x70 /* 00000092 */ 00000024 2043 movea.l A0, D3 00000026 6F6D ble +0x6F /* 00000095 */ 00000028 7075 moveq.l D0, 0x75 0000002A 7469 moveq.l D2, 0x69 0000002C 6E67 bgt +0x69 /* 00000095 */ 0000002E 2C20 move.l D6, -[A0] 00000030 496E 632E chk.w D4, [A6 + 0x632E] label00000034: 00000034 4E56 FFEA link A6, -0x0016 00000038 48E7 0718 movem.l -[A7], D5,D6,D7,A3,A4 0000003C 4EBA 0078 jsr [PC + 0x78 /* 000000B6 */] 00000040 3E00 move.w D7, D0 00000042 6728 beq +0x2A /* 0000006C */ 00000044 48C7 ext.l D7 00000046 2A07 move.l D5, D7 00000048 4685 not.l D5 0000004A 558F subq.l A7, 2 0000004C 3F05 move.w -[A7], D5 0000004E 3F3C 07D0 move.w -[A7], 0x7D0 00000052 486E FFEA pea.l [A6 - 0x16] 00000056 4EBA 018A jsr [PC + 0x18A /* 000001E2 */] 0000005A 3C1F move.w D6, [A7]+ 0000005C 48C6 ext.l D6 0000005E 4A86 tst.l D6 00000060 660A bne +0xC /* 0000006C */ 00000062 206E 0008 movea.l A0, [A6 + 0x8] 00000066 216E FFEA 0042 move.l [A0 + 0x42], [A6 - 0x16] label0000006C: 0000006C 48C7 ext.l D7 0000006E 4A87 tst.l D7 00000070 6704 beq +0x6 /* 00000076 */ 00000072 4A46 tst.w D6 00000074 672C beq +0x2E /* 000000A2 */ label00000076: 00000076 598F subq.l A7, 4 00000078 7005 moveq.l D0, 0x05 0000007A 2F00 move.l -[A7], D0 0000007C 4EBA 0158 jsr [PC + 0x158 /* 000001D6 */] 00000080 285F movea.l A4, [A7]+ 00000082 200C move.l D0, A4 00000084 671C beq +0x1E /* 000000A2 */ 00000086 206E 0008 movea.l A0, [A6 + 0x8] // begin alternate branch 00000088-00000090 label00000088: 00000088 0008 214C ori.b A0, 0x4C /* 'L' */ 0000008C 0042 2654 ori.w D2, 0x2654 /* '&T' */ // end alternate branch 00000088-00000090 label00000088: // (misaligned) 0000008A 214C 0042 move.l [A0 + 0x42], A4 label0000008E: 0000008E 2654 movea.l A3, [A4] 00000090 16FC 0064 move.b [A3]+, 0x64 /* 'd' */ // begin alternate branch 00000092-0000009C label00000092: 00000092 0064 16FC ori.w -[A4], 0x16FC 00000096 006F 16FC 006E ori.w [A7 + 0x6E], 0x16FC // end alternate branch 00000092-0000009C label00000092: // (misaligned) 00000094 16FC 006F move.b [A3]+, 0x6F /* 'o' */ 00000098 16FC 006E move.b [A3]+, 0x6E /* 'n' */ 0000009C 16FC 0065 move.b [A3]+, 0x65 /* 'e' */ 000000A0 4213 clr.b [A3] label000000A2: 000000A2 4CEE 18E0 FFD6 movem.l D5,D6,D7,A3,A4, [A6 - 0x2A] 000000A8 4E5E unlink A6 000000AA 2E9F move.l [A7], [A7]+ 000000AC 4E75 rts 000000AE 844D or.w D2, A5 000000B0 4149 chk.w D0, A1 000000B2 4E00 .invalid // invalid opcode 4 000000B4 0000 4E56 ori.b D0, 0x56 /* 'V' */ // begin alternate branch 000000B6-000000BA fn000000B6: 000000B6 4E56 FFFC link A6, -0x0004 // end alternate branch 000000B6-000000BA fn000000B6: // (misaligned) 000000B8 FFFC .invalid <> 000000BA 48E7 0318 movem.l -[A7], D6,D7,A3,A4 000000BE 2D78 011C FFFC move.l [A6 - 0x4], [0x0000011C /* UTableBase */] 000000C4 7E1B moveq.l D7, 0x1B 000000C6 6044 bra +0x46 /* 0000010C */ label000000C8: 000000C8 206E FFFC movea.l A0, [A6 - 0x4] 000000CC 48C7 ext.l D7 000000CE 2007 move.l D0, D7 000000D0 E580 asl D0, 2 000000D2 2670 0800 movea.l A3, [A0 + D0] 000000D6 200B move.l D0, A3 000000D8 6730 beq +0x32 /* 0000010A */ 000000DA 2053 movea.l A0, [A3] 000000DC 3028 0004 move.w D0, [A0 + 0x4] 000000E0 48C0 ext.l D0 000000E2 7240 moveq.l D1, 0x40 000000E4 C280 and.l D1, D0 000000E6 6708 beq +0xA /* 000000F0 */ 000000E8 2053 movea.l A0, [A3] 000000EA 2050 movea.l A0, [A0] 000000EC 2850 movea.l A4, [A0] 000000EE 6004 bra +0x6 /* 000000F4 */ label000000F0: 000000F0 2053 movea.l A0, [A3] 000000F2 2850 movea.l A4, [A0] label000000F4: 000000F4 200C move.l D0, A4 000000F6 7212 moveq.l D1, 0x12 000000F8 D081 add.l D0, D1 000000FA 2F00 move.l -[A7], D0 000000FC 4EBA 00A6 jsr [PC + 0xA6 /* 000001A4 */] 00000100 4A80 tst.l D0 00000102 588F addq.l A7, 4 00000104 6604 bne +0x6 /* 0000010A */ 00000106 3007 move.w D0, D7 00000108 606C bra +0x6E /* 00000176 */ label0000010A: 0000010A 5247 addq.w D7, 1 label0000010C: 0000010C 48C7 ext.l D7 0000010E 701F moveq.l D0, 0x1F 00000110 B087 cmp.l D0, D7 00000112 6CB4 bge -0x4A /* 000000C8 */ 00000114 3038 01D2 move.w D0, [0x000001D2 /* UnitNtryCnt */] 00000118 48C0 ext.l D0 0000011A 2C00 move.l D6, D0 0000011C 5386 subq.l D6, 1 0000011E 7E28 moveq.l D7, 0x28 00000120 604A bra +0x4C /* 0000016C */ label00000122: 00000122 206E FFFC movea.l A0, [A6 - 0x4] 00000126 48C7 ext.l D7 00000128 2007 move.l D0, D7 0000012A E580 asl D0, 2 0000012C 2670 0800 movea.l A3, [A0 + D0] 00000130 200B move.l D0, A3 00000132 6736 beq +0x38 /* 0000016A */ 00000134 2053 movea.l A0, [A3] 00000136 3028 0004 move.w D0, [A0 + 0x4] 0000013A 48C0 ext.l D0 0000013C 7240 moveq.l D1, 0x40 0000013E C280 and.l D1, D0 00000140 6706 beq +0x8 /* 00000148 */ 00000142 2053 movea.l A0, [A3] 00000144 2850 movea.l A4, [A0] 00000146 600C bra +0xE /* 00000154 */ label00000148: 00000148 2053 movea.l A0, [A3] 0000014A 2050 movea.l A0, [A0] 0000014C 1010 move.b D0, [A0] 0000014E 4880 ext.w D0 00000150 48C0 ext.l D0 00000152 2840 movea.l A4, D0 label00000154: 00000154 200C move.l D0, A4 00000156 7212 moveq.l D1, 0x12 00000158 D081 add.l D0, D1 0000015A 2F00 move.l -[A7], D0 0000015C 4EBA 0046 jsr [PC + 0x46 /* 000001A4 */] 00000160 4A80 tst.l D0 00000162 588F addq.l A7, 4 00000164 6604 bne +0x6 /* 0000016A */ 00000166 3007 move.w D0, D7 00000168 600C bra +0xE /* 00000176 */ label0000016A: 0000016A 5247 addq.w D7, 1 label0000016C: 0000016C 48C7 ext.l D7 0000016E 48C6 ext.l D6 00000170 BC87 cmp.l D6, D7 00000172 6CAE bge -0x50 /* 00000122 */ 00000174 7000 moveq.l D0, 0x00 label00000176: 00000176 4CEE 18C0 FFEC movem.l D6,D7,A3,A4, [A6 - 0x14] 0000017C 4E5E unlink A6 0000017E 4E75 rts 00000180 8D46 696E pack D6, D6, 0x696E 00000184 6453 bcc +0x55 /* 000001D9 */ 00000186 6E64 bgt +0x66 /* 000001EC */ 00000188 4472 6976 neg.w <> 0000018C 6572 bcs +0x74 /* 00000200 */ 0000018E 0000 41FA ori.b D0, 0xFA // begin alternate branch 00000190-00000196 fn00000190: 00000190 41FA 0006 lea.l A0, [PC + 0x6 /* 00000198, value 0xA2E536E '\n.Sn', pstring ".SndDriver" */] 00000194 2008 move.l D0, A0 // end alternate branch 00000190-00000196 fn00000190: // (misaligned) 00000192 0006 2008 ori.b D6, 0x8 00000196 4E75 rts 00000198 0A2E 536E 6444 xori.b [A6 + 0x6444], 0x6E /* 'n' */ 0000019E 7269 moveq.l D1, 0x69 000001A0 7665 moveq.l D3, 0x65 000001A2 7200 moveq.l D1, 0x00 fn000001A4: 000001A4 7000 moveq.l D0, 0x00 000001A6 4EBA FFE8 jsr [PC - 0x18 /* 00000190 */] 000001AA 226F 0004 movea.l A1, [A7 + 0x4] 000001AE 7000 moveq.l D0, 0x00 000001B0 2200 move.l D1, D0 000001B2 1210 move.b D1, [A0] label000001B4: 000001B4 1018 move.b D0, [A0]+ 000001B6 9019 sub.b D0, [A1]+ 000001B8 56C9 FFFA dbne D1, -0x8 /* 000001B4 */ 000001BC 4E75 rts 000001BE 225F movea.l A1, [A7]+ 000001C0 201F move.l D0, [A7]+ 000001C2 A04C syscall CompactMem 000001C4 2E80 move.l [A7], D0 000001C6 4E71 nop 000001C8 7000 moveq.l D0, 0x00 label000001CA: 000001CA 2F09 move.l -[A7], A1 label000001CC: 000001CC 31C0 0220 move.w [0x00000220 /* MemErr */], D0 000001D0 4E75 rts 000001D2 7000 moveq.l D0, 0x00 000001D4 60F6 bra -0x8 /* 000001CC */ fn000001D6: 000001D6 225F movea.l A1, [A7]+ 000001D8 201F move.l D0, [A7]+ 000001DA A122 syscall NewHandle, flags=1 000001DC 2E88 move.l [A7], A0 000001DE 4EFA FFEA jmp [PC - 0x16 /* 000001CA */] fn000001E2: 000001E2 4E56 FFCE link A6, -0x0032 000001E6 41EE FFCE lea.l A0, [A6 - 0x32] 000001EA 316E 000E 0018 move.w [A0 + 0x18], [A6 + 0xE] // begin alternate branch 000001EC-000001F0 label000001EC: 000001EC 000E 0018 ori.b A6, 0x18 // end alternate branch 000001EC-000001F0 label000001EC: // (misaligned) 000001F0 316E 000C 001A move.w [A0 + 0x1A], [A6 + 0xC] 000001F6 A005 syscall Status 000001F8 3D40 0010 move.w [A6 + 0x10], D0 000001FC 41EE FFEA lea.l A0, [A6 - 0x16] label00000200: 00000200 226E 0008 movea.l A1, [A6 + 0x8] 00000204 7016 moveq.l D0, 0x16 00000206 A02E syscall BlockMove/BlockMoveData 00000208 4E5E unlink A6 0000020A 225F movea.l A1, [A7]+ 0000020C 508F addq.l A7, 8 0000020E 4ED1 jmp [A1]